Changelog for version 0.3.0
===========================

Sorry for the delay. I had many other things to do and I worked on a project for a school
competition (yes, it's computer-related, and it's hosted on the roundabout).

The plan for now is to have a beta by the end of June; that means there will be about two more
major alpha releases (0.4 and 0.5). The beta will be not feature-complete either because there's
an infinite number of features we could have, but the beta must be **usable**. That means one
should be able to host a repository on the 0.6 release without too many problems.

*Note: 🔥 marks important updates.*

New features in this release
----------------------------

* **🔥 There is now code review.**
  * You can comment on commit diffs. Comments are attached to a particular line and can be added
    to both added, deleted, and unchanged lines.
  * You can't reply to comments. Just add a new one.
  * Comments can be marked as resolved which will collapse them in a dedicated section below the
    other comments.
  * Comments can be deleted.
  * Comments support markdown; forum posts will soon support markdown as well.
  * Comments can't be edited yet, but this will be added soon.
  * Comments don't integrate with the PR view or notifications yet.
* **🔥 You can now make static sites for your repositories.**
  * Can be generated from any branch; automatically updated on push.
  * The site is available at `https://<username>.<domain>/<repo>`, just like in GitHub Pages.
  * You can dedicate *one* primary site, which will not have a subpath.
  * Custom nginx config is required to serve them; I will provide a sample config soon.
  * Sites don't have a site generator. You generate them yourself. When CI/CD will be added, you
    will be able to generate them automatically.
  * More username restrictions have been added to accommodate this feature. Most notably, they
    are now forced lowercase.
* **🔥 The repository settings page now works.**
  * You can update description, visibility, the default branch, and make static sites.
* **🔥 You must now confirm your email address.**
  * This is because of the below change.
  * You can still use it on multiple accounts, but you must confirm it on each.
  * It is still not required to have an email address.
* **🔥 Commit attribution has been improved.**
  * It looks for all users with that email address and assigns the commit to the one which has
    the highest permission level in the repository.
  * If there isn't such a user, it assigns it to the pusher.
* Users can now change their avatar.
  * On signup, a random one is still picked.
  * You can upload a new one in the settings.
* Repo pages now have an info button. 
  * It brings up a dialogue that shows the description and clone URL.
* A basic, WIP repo search box.
  * Just shows a list of repos that contain the query in the name, nothing more for now.
* Pagination has been added.
  * Only for commit logs for now.
  * The page length is configurable in the settings, and can be overriden only for the current
    query.
* Commit identity is now encoded so scraping it is just a bit harder.
* The session cookie had some security features enabled.

Changed features in this release
-------------------------------

* The help page now redirects to some other actual help.
* Markdown list parsing is more lenient now. A blank line is required to end a list.
* The user profile now shows repositories in cards and also shows their description.

Fixed bugs in this release
--------------------------

* Inter-repo merging is possible - but **DO NOT USE THEM FOR NOW**. They will not copy
  commits causing `???` to show up in the file list and breaking your repository forever.
* Accessing a missing user profile now returns 404, not an empty page with 200.
* Commit notification emails should now be sent correctly.
* The file page now displays code normally.

Dependency updates
------------------

* htmx has been updated.

Documentation updates
---------------------

* There is now a contributing guide.
